package com.mdd.admin.vo.order;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 租赁订单信息
 * {@code @Description}
 * {@code @Author} 幻速
 * {@code @Date} 2023/11/3 13:43
 **/
@Data
public class OrderDetailVo implements Serializable {

        @ApiModelProperty(value = "订单id")
        private Long orderId;
        @ApiModelProperty(value = "订单编号")
        private String orderSn;
        @ApiModelProperty(value = "订单状态 0待支付 1待签约 2车辆准备中 3待提车 4租赁中 5待结算 6待确认 7已完成 8已取消")
        private Integer status;
        @ApiModelProperty(value = "备注")
        private String note;
        @ApiModelProperty(value = "商品图片")
        private String productPic;
        @ApiModelProperty(value = "商品名称")
        private String productName;
        @ApiModelProperty(value = "商品属性")
        private String productAttr;
        @ApiModelProperty(value = "车辆id")
        private String vehicleId;
        @ApiModelProperty(value = "车辆名称")
        private String vehicleName;
        @ApiModelProperty(value = "车牌")
        private String licensePlate;
        @ApiModelProperty(value = "押金")
        private BigDecimal deposit;
        @ApiModelProperty(value = "每期租金")
        private BigDecimal eachIssue;
        @ApiModelProperty(value = "其他费用")
        private BigDecimal otherExpenses;
        @ApiModelProperty(value = " 租赁类型:1、月 2、周 3、日 ")
        private Integer leaseType;
        @ApiModelProperty(value = "服务类型 1、以租代购 2、纯租 3、月供 4、分期")
        private Integer serviceType;
        @ApiModelProperty(value = "租赁周期")
        private Integer leasePeriod;
        @ApiModelProperty(value = "当前租期")
        private Integer currentPeriod;
        @ApiModelProperty(value = "用户id")
        private Long userId;
        @ApiModelProperty(value = "用户名称")
        private String username;
        @ApiModelProperty(value = "手机号码")
        private String mobile;
        @ApiModelProperty(value = "到期日期")
        @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
        @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
        private Date dueDate;
        @ApiModelProperty(value = "完成时间")
        @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
        @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
        private Date completionTime;
        @ApiModelProperty(value = "创建时间")
        @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
        @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
        private Date createTime;
        @ApiModelProperty(value = "交车信息")
        OrderHandleLogVo deliverVehicle;
        @ApiModelProperty(value = "还车信息")
        OrderHandleLogVo returnVehicle;
        @ApiModelProperty(value = " 订单车辆状态：0未交车 1已交车 2已还车")
        private Integer orderVehicleStatus;
}
